home *** CD-ROM | disk | FTP | other *** search
/ SPACE 2 / SPACE - Library 2 - Volume 1.iso / apps / 25 / applic / tinyview.doc < prev    next >
Text File  |  1986-06-19  |  6KB  |  93 lines

  1.                   Tiny Stuff and Tiny View
  2.                   by  David Mumper
  3.                    ST Picture Compression
  4.      Any ST user who has pictures knows that, no matter how good (or bad) they
  5. look, they always take roughly 32128 bytes of disk space.  This can be quite
  6. discouraging when you realize that this means that you can only fit 10 pictures
  7. on a single sided disk.  From NeoChrome 0.5, the memory is used as follows...
  8.        4 bytes telling the resolution (0=low, 1=medium, 2=high)
  9.       32 bytes for the colors
  10.       12 bytes set aside for a filename (always "        .   ")
  11.        2 bytes telling which colors are set for rotating (first is always $80)
  12.        2 bytes telling the speed and direction of rotation
  13.        2 bytes telling how long to rotate
  14.       74 reserved bytes (for expansion)
  15.    32000 bytes of screen memory
  16.    -----
  17.    32128 total
  18.      A more efficient way of saving the pictures would be to do a compression on
  19. the screen memory so that, if there were repetative sections, it wouldn't be as
  20. long.  An example of how to do this could be to look at the Micro-Illustrator
  21. (Koala pad) compaction for the 8-bit computers.  A straight memory save of a
  22. Graphics 8 (or 15) screen would take up 7680 bytes.  Saving a picture with the
  23. Micro-Illustrator format can result in a picture as small as 32 bytes (if the
  24. screen was blank).  This type of compression could be applied to the ST as well
  25. resulting in very large memory savings.  TINYSTUFF is an implementation of just
  26. such a compression algorhythm that produces an average compression of about 64%.
  27. Comparing it to the Micro-Illustrator format, it's smallest save would be 42
  28. bytes.
  29.                 USING THE COMPACTOR
  30.      To use the compactor program, place it on a freshly formatted disk and add
  31. some pictures.  For best results, place half as many uncompacted pictures on
  32. the disk as you could actually fit (5 on single sided and 10 on double sided).
  33. Next, double click on the compacter program.  It will then load and begin
  34. executing.  The program will begin by asking you the formats for the pictures to
  35. convert.  As an additional feature, you can convert Degas format pictures to Neo
  36. (or vice versa) as well as compacting or uncompacting them.  After you have
  37. chosen the source and destination formats for the pictures, the program will
  38. begin loading all the pictures that match the source format from the same disk
  39. and pathname as the program.  The program will load and display each picture
  40. that has the correct extender for that file type (i.e. '.NEO' for NeoChrome,
  41. '.TNY' for Tiny or '.PI?' for Degas).  As the program displays the pics, it will
  42. convert them and save them back to the same disk / pathname as the program.
  43. Each of the pictures will have the same name as they start with but the extender
  44. will be changed to that of the destination format.
  45.      Having your picture collection in a compacted format is handy to save space
  46. but is a nuisance if you can't look at them that way.  Therefore, TINYVIEW is a
  47. displayer program for pictures in Tiny format.  To look at the pictures, just
  48. place as many of them on a disk with the displayer program as will fit then
  49. double click the display program.  It will search the directory for the first
  50. filename with a '.TNY' extender and then start displaying them from there.  It
  51. will load and display all the pictures on the disk, cycling back to the
  52. beginning when the end of directory is reached.  Pressing the space bar will
  53. cause the program to pause and wait for another key to be pressed before going
  54. on to the next picture.  To exit the program, press any key other than the space
  55. bar while not paused.  The picture that is being loaded will be displayed and
  56. then the program will return to the desktop.  Any pictures that have color
  57. rotation information, will have that saved with the picture when it's compacted
  58. and displayed by this program.
  59.      The file format of the compacted files is as follows...
  60.       1 byte that tells which resolution and if there is rotation information
  61.         (if there is rotation information it is stored as follows
  62.        1 byte for the start and end color to rotate (start is high 4 bits
  63.          end is low 4 bits)
  64.        1 byte for direction and speed of rotation (negative for left
  65.          rotation positive for right, actual number is the number of
  66.          vertical blank interrupts to wait between each rotation)
  67.        2 bytes for the number of revolutions to make)
  68.       2 bytes that tell how many control bytes there are
  69.       2 bytes that tell how many data bytes there are
  70.      32 bytes that tell the computer the colors
  71. 3-10667 control bytes
  72. 2-32000 data bytes
  73.   -----
  74. 42-32044 minimum-maximum size
  75.      The screen is scanned column by column, plane by plane (assuming low res
  76. format) as the program does the compaction.
  77.      If there is rotation information, the resolution has 3 added to it to
  78. signify this.
  79.      Control bytes are interpreted as follows...
  80.     X < 0 -- 1-127 unique words are taken from the data section
  81.     X = 0 -- two more words are taken from the control section that is a value
  82.             128-32767 which is the number of times to repeat the next data word
  83.     X = 1 -- two more bytes are taken from the control section that is a value
  84.             128-32767 of unique words to take from data section
  85.     X > 1 -- 1 byte of repetative information is taken from data section and
  86.             repeated 2-127 times.
  87.      Due to this compression algorythm, I've been able to place as many as 95
  88. pictures on a double sided disk.  (That's an 850% improvement!! and not common)
  89. Average disks will hold roughly 20-30 pictures.  So far I've seen many very
  90. nicely done pictures on bulletin boards and visiting friends, so hopefully, by
  91. allowing the average user the ability to keep more pictures on less disks, we'll
  92. all be able to see many more artists showing their abilities on the ST.
  93.